package io.datajek.springbasics.moverecommendersystem.lesson11;
import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

@Component
public class RecommenderImplementation {

	private Logger logger = LoggerFactory.getLogger(this.getClass());
	private Filter filter;
	
	@Autowired
	public void setFilter(Filter filter) {
		logger.info("In RecommenderImplementation setter method..dependency injection");
		this.filter = filter;
	}

	//使用过滤器来获得推荐
	public String [] recommendMovies (String movie) {
		
 		String[] results = filter.getRecommendations("Finding Dory");
		return results;
	}
	
	@PostConstruct
	public void postConstruct() {
		//初始化代码
		logger.info("In RecommenderImplementation postConstruct method");
	}

	@PreDestroy
	public void preDestroy() {
		//用于清除的代码
		logger.info("In RecommenderImplementation preDestroy method");
	}
}